package com.guaika.reggie.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.guaika.reggie.common.ResultMessage;
import com.guaika.reggie.dto.DishDto;
import com.guaika.reggie.entity.Dish;

import java.util.List;

/**
 * @author GuaiKa
 */
public interface DishServices extends IService<Dish> {

    /***
     * 插入菜品的同时存入菜品口味信息
     * @param dishDto
     */
    public void saveDishAndDishFlavor(DishDto dishDto);

    /***
     * 根据菜品id获取菜品信息和口味信息
     * @param id
     * @return
     */
    DishDto getByIdWidthDish(Long id);

    /***
     * 更新菜品信息，同时更新菜品的口味数据
     * @param dishDto
     */
    void updateWidthDishDto(DishDto dishDto);

    /***
     * 口味数据
     * @param dish
     * @return
     */
    ResultMessage<List<DishDto>> dishlist(Dish dish);

    /***
     * 口味数据
     * @param page
     * @param pageSize
     * @param name
     * @return
     */
    ResultMessage<Page> dishPage(int page, int pageSize, String name);

    /**
     * 起售停售
     * @param ids
     * @param status
     * @return
     */
    ResultMessage<String> statusUpdate(Integer status,Long[] ids);


    /**
     * 删除菜品
     * @param ids
     * @return
     */
    ResultMessage<String> deleteDish(Long[] ids);
}
